#include <Platform.h> // Only use angled for Platform, else, xcode project won't compile
#include "../cpp_foundation/XString.h"
#include "../cpp_foundation/unicode_conversions.h"
#include "../Platform/plist/plist.h"

#ifndef _MSC_VER
static const char* config_all =
"<?xml version=\"1.0\" encoding=\"UTF-8\"?> \
<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\"> \
<plist version=\"1.0\"> \
<dict> \
  <key>Test null data</key> \
  <data></data> \
  <dict> \
    <key>AutoMerge</key> \
    <true/> \
    <key>DSDT</key> \
    <dict> \
      <key>Debug</key> \
      <true/> \
      <key>DropOEM_DSM</key> \
      <dict> \
        <key>ATI</key> \
        <true/> \
        <key>Firewire</key> \
        <false/> \
        <key>HDA</key> \
        <false/> \
        <key>HDMI</key> \
        <false/> \
        <key>IDE</key> \
        <true/> \
        <key>IntelGFX</key> \
        <false/> \
        <key>LAN</key> \
        <false/> \
        <key>LPC</key> \
        <false/> \
        <key>NVidia</key> \
        <false/> \
        <key>SATA</key> \
        <false/> \
        <key>SmBUS</key> \
        <false/> \
        <key>USB</key> \
        <false/> \
        <key>WIFI</key> \
        <false/> \
      </dict> \
      <key>Fixes</key> \
      <dict> \
        <key>FixDarwin</key> \
        <true/> \
        <key>FixDisplay</key> \
        <true/> \
        <key>FixS3D</key> \
        <true/> \
      </dict> \
      <key>Name</key> \
      <string>aa</string> \
      <key>Patches</key> \
      <array> \
        <dict> \
          <key>Comment</key> \
          <string>ACPI1</string> \
          <key>Disabled</key> \
          <false/> \
          <key>Find</key> \
          <data> \
          AA== \
          </data> \
          <key>Replace</key> \
          <data> \
          AQ== \
          </data> \
        </dict> \
        <dict> \
          <key>Comment</key> \
          <string>ACPI2</string> \
          <key>Disabled</key> \
          <true/> \
          <key>Find</key> \
          <data> \
          Ag== \
          </data> \
          <key>Replace</key> \
          <data> \
          Aw== \
          </data> \
        </dict> \
        <dict> \
          <key>Comment</key> \
          <string>change EHC1 to EH01</string> \
          <key>Disabled</key> \
          <false/> \
          <key>Find</key> \
          <data> \
          RUhDMQ== \
          </data> \
          <key>Replace</key> \
          <data> \
          RUgwMQ== \
          </data> \
        </dict> \
      </array> \
      <key>ReuseFFFF</key> \
      <true/> \
      <key>Rtc8Allowed</key> \
      <true/> \
      <key>SlpSmiAtWake</key> \
      <true/> \
      <key>SuspendOverride</key> \
      <true/> \
    </dict> \
    <key>DisableAPSNAPLF</key> \
    <true/> \
    <key>DisableASPM</key> \
    <true/> \
    <key>DisabledAML</key> \
    <array> \
      <string>aa</string> \
      <string>bb</string> \
    </array> \
    <key>DropTables</key> \
    <array> \
      <dict> \
        <key>Signature</key> \
        <string>SSDT</string> \
        <key>TableId</key> \
        <string>CpuPm</string> \
      </dict> \
    </array> \
    <key>HaltEnabler</key> \
    <true/> \
    <key>PatchAPIC</key> \
    <true/> \
    <key>ResetAddress</key> \
    <string>01</string> \
    <key>ResetValue</key> \
    <string>02</string> \
    <key>SortedOrder</key> \
    <array> \
      <string>dd</string> \
      <string>cc</string> \
    </array> \
    <key>smartUPS</key> \
    <true/> \
  </dict> \
  <key>Boot</key> \
  <dict> \
    <key>Arguments</key> \
    <string>-v arch=i386 slide=0 dart=0 -xcpm darkwake=1 npci=0x2000 cpus=1 debug=0x100 aa</string> \
    <key>BlackList</key> \
    <array> \
      <string>hh</string> \
    </array> \
    <key>CustomLogo</key> \
    <string>Apple</string> \
    <key>Debug</key> \
    <true/> \
    <key>DefaultLoader</key> \
    <string>ii</string> \
    <key>DefaultVolume</key> \
    <string>LastBootedVolume</string> \
    <key>DisableCloverHotkeys</key> \
    <true/> \
    <key>HibernationFixup</key> \
    <true/> \
    <key>Legacy</key> \
    <string>LegacyBiosDefault</string> \
    <key>LegacyBiosDefaultEntry</key> \
    <integer>12</integer> \
    <key>NeverDoRecovery</key> \
    <true/> \
    <key>NeverHibernate</key> \
    <true/> \
    <key>NoEarlyProgress</key> \
    <true/> \
    <key>Policy</key> \
    <string>Allow</string> \
    <key>Secure</key> \
    <true/> \
    <key>SignatureFixup</key> \
    <true/> \
    <key>SkipHibernateTimeout</key> \
    <true/> \
    <key>StrictHibernate</key> \
    <true/> \
    <key>Timeout</key> \
    <integer>2</integer> \
    <key>WhiteList</key> \
    <array> \
      <string>ff</string> \
      <string>gg</string> \
    </array> \
    <key>XMPDetection</key> \
    <integer>1</integer> \
  </dict> \
  <key>BootGraphics</key> \
  <dict> \
    <key>DefaultBackgroundColor</key> \
    <string>0xF1F1F1</string> \
    <key>EFILoginHiDPI</key> \
    <integer>2</integer> \
    <key>UIScale</key> \
    <integer>4</integer> \
    <key>flagstate</key> \
    <integer>3</integer> \
  </dict> \
  <key>CPU</key> \
  <dict> \
    <key>BusSpeedkHz</key> \
    <integer>800</integer> \
    <key>C2</key> \
    <true/> \
    <key>C4</key> \
    <true/> \
    <key>C6</key> \
    <true/> \
    <key>FrequencyMHz</key> \
    <integer>2000</integer> \
    <key>HWPEnable</key> \
    <true/> \
    <key>HWPValue</key> \
    <string>0x7</string> \
    <key>Latency</key> \
    <string>0x3</string> \
    <key>QEMU</key> \
    <true/> \
    <key>QPI</key> \
    <integer>4</integer> \
    <key>TDP</key> \
    <integer>6</integer> \
    <key>TurboDisable</key> \
    <true/> \
    <key>Type</key> \
    <string>0x5</string> \
    <key>UseARTFrequency</key> \
    <true/> \
  </dict> \
  <key>Devices</key> \
  <dict> \
    <key>AddProperties</key> \
    <array> \
      <dict> \
        <key>Device</key> \
        <string>SATA</string> \
        <key>Disabled</key> \
        <false/> \
        <key>Key</key> \
        <string>10</string> \
        <key>Value</key> \
        <integer>11</integer> \
      </dict> \
      <dict> \
        <key>Device</key> \
        <string>LPC</string> \
        <key>Disabled</key> \
        <true/> \
        <key>Key</key> \
        <string>12</string> \
        <key>Value</key> \
        <integer>13</integer> \
      </dict> \
      <dict> \
        <key>Device</key> \
        <string>SmBUS</string> \
        <key>Disabled</key> \
        <false/> \
        <key>Key</key> \
        <string>kk</string> \
        <key>Value</key> \
        <string>ll</string> \
      </dict> \
      <dict> \
        <key>Device</key> \
        <string>Firewire</string> \
        <key>Disabled</key> \
        <false/> \
        <key>Key</key> \
        <string>14</string> \
        <key>Value</key> \
        <data> \
        FQ== \
        </data> \
      </dict> \
    </array> \
    <key>AirportBridgeDeviceName</key> \
    <string>airportbridge</string> \
    <key>Arbitrary</key> \
    <array> \
      <dict> \
        <key>Comment</key> \
        <string>C1</string> \
        <key>CustomProperties</key> \
        <array> \
          <dict> \
            <key>Disabled</key> \
            <false/> \
            <key>Key</key> \
            <string>ll</string> \
            <key>Value</key> \
            <string>mm</string> \
          </dict> \
          <dict> \
            <key>Disabled</key> \
            <true/> \
            <key>Key</key> \
            <string>nn</string> \
            <key>Value</key> \
            <integer>1</integer> \
          </dict> \
          <dict> \
            <key>Disabled</key> \
            <false/> \
            <key>Key</key> \
            <string>oo</string> \
            <key>Value</key> \
            <data> \
            Ag== \
            </data> \
          </dict> \
        </array> \
        <key>PciAddr</key> \
        <string>00:00.01</string> \
      </dict> \
    </array> \
    <key>Audio</key> \
    <dict> \
      <key>AFGLowPowerState</key> \
      <true/> \
      <key>Inject</key> \
      <string>Detect</string> \
      <key>ResetHDA</key> \
      <true/> \
    </dict> \
    <key>DisableFunctions</key> \
    <true/> \
    <key>FakeID</key> \
    <dict> \
      <key>ATI</key> \
      <string>0x22221002</string> \
      <key>IMEI</key> \
      <string>0x22221002</string> \
      <key>IntelGFX</key> \
      <string>0x22221002</string> \
      <key>LAN</key> \
      <string>0x22221002</string> \
      <key>NVidia</key> \
      <string>0x22221002</string> \
      <key>SATA</key> \
      <string>0x22221002</string> \
      <key>WIFI</key> \
      <string>0x22221002</string> \
      <key>XHCI</key> \
      <string>0x22221002</string> \
    </dict> \
    <key>ForceHPET</key> \
    <true/> \
    <key>Inject</key> \
    <true/> \
    <key>IntelMaxValue</key> \
    <true/> \
    <key>LpcTune</key> \
    <true/> \
    <key>NoDefaultProperties</key> \
    <true/> \
    <key>Properties</key> \
    <string>jj \
kk</string> \
    <key>SetIntelBacklight</key> \
    <true/> \
    <key>SetIntelMaxBacklight</key> \
    <true/> \
    <key>USB</key> \
    <dict> \
      <key>AddClockID</key> \
      <true/> \
      <key>FixOwnership</key> \
      <true/> \
      <key>HighCurrent</key> \
      <true/> \
      <key>Inject</key> \
      <true/> \
    </dict> \
    <key>UseIntelHDMI</key> \
    <true/> \
  </dict> \
  <key>DisableDrivers</key> \
  <array> \
    <string>OsxAptioFixDrv</string> \
    <string>Ps2KeyboardDxe</string> \
    <string>Ps2MouseDxe</string> \
  </array> \
  <key>GUI</key> \
  <dict> \
    <key>ConsoleMode</key> \
    <string>Max</string> \
    <key>Custom</key> \
    <dict> \
      <key>Entries</key> \
      <array> \
        <dict> \
          <key>AddArguments</key> \
          <string>addarg</string> \
          <key>Arguments</key> \
          <string>arg</string> \
          <key>BootBgColor</key> \
          <string>bootbgcolor</string> \
          <key>CustomLogo</key> \
          <string>Apple</string> \
          <key>Disabled</key> \
          <true/> \
          <key>DriveImage</key> \
          <string>driveimage</string> \
          <key>FullTitle</key> \
          <string>title</string> \
          <key>Hidden</key> \
          <false/> \
          <key>Hotkey</key> \
          <string>H</string> \
          <key>Ignore</key> \
          <true/> \
          <key>Image</key> \
          <string>image</string> \
          <key>Path</key> \
          <string>path</string> \
          <key>Settings</key> \
          <string>settings</string> \
          <key>SubEntries</key> \
          <array> \
            <dict> \
              <key>AddArguments</key> \
              <string>arg2</string> \
              <key>FullTitle</key> \
              <string>title1</string> \
            </dict> \
            <dict> \
              <key>AddArguments</key> \
              <string>arg3</string> \
              <key>Title</key> \
              <string>title2</string> \
            </dict> \
            <dict> \
              <key>AddArguments</key> \
              <string>arg4</string> \
              <key>FullTitle</key> \
              <string>title3</string> \
            </dict> \
            <dict> \
              <key>AddArguments</key> \
              <string>arg5</string> \
              <key>Title</key> \
              <string>title4</string> \
            </dict> \
          </array> \
          <key>Type</key> \
          <string>Oldest</string> \
          <key>Volume</key> \
          <string>v1</string> \
          <key>VolumeType</key> \
          <string>Internal</string> \
        </dict> \
      </array> \
      <key>Legacy</key> \
      <array> \
        <dict> \
          <key>Disabled</key> \
          <true/> \
          <key>FullTitle</key> \
          <string>title</string> \
          <key>Hidden</key> \
          <true/> \
          <key>Hotkey</key> \
          <string></string> \
          <key>Ignore</key> \
          <true/> \
          <key>Type</key> \
          <string>Windows</string> \
          <key>Volume</key> \
          <string>v2</string> \
        </dict> \
      </array> \
      <key>Tool</key> \
      <array> \
        <dict> \
          <key>Arguments</key> \
          <string>b</string> \
          <key>Disabled</key> \
          <true/> \
          <key>Hidden</key> \
          <true/> \
          <key>Hotkey</key> \
          <string>b</string> \
          <key>Ignore</key> \
          <true/> \
          <key>Path</key> \
          <string>path</string> \
          <key>Title</key> \
          <string>title</string> \
          <key>Volume</key> \
          <string>tool1</string> \
        </dict> \
      </array> \
    </dict> \
    <key>CustomIcons</key> \
    <true/> \
    <key>Hide</key> \
    <array> \
      <string>sdfsdfdf</string> \
      <string>sdfsfdf</string> \
    </array> \
    <key>Language</key> \
    <string>es:0</string> \
    <key>Mouse</key> \
    <dict> \
      <key>DoubleClick</key> \
      <integer>501</integer> \
      <key>Enabled</key> \
      <true/> \
      <key>Mirror</key> \
      <true/> \
      <key>Speed</key> \
      <integer>5</integer> \
    </dict> \
    <key>Scan</key> \
    <dict> \
      <key>Entries</key> \
      <true/> \
      <key>Kernel</key> \
      <string>First</string> \
      <key>Legacy</key> \
      <string>First</string> \
      <key>Linux</key> \
      <true/> \
      <key>Tool</key> \
      <true/> \
    </dict> \
    <key>ScreenResolution</key> \
    <string>1366x768</string> \
    <key>ShowOptimus</key> \
    <true/> \
    <key>TextOnly</key> \
    <true/> \
    <key>Theme</key> \
    <string>th</string> \
  </dict> \
  <key>Graphics</key> \
  <dict> \
    <key>ATI</key> \
    <array> \
      <dict> \
        <key>IOPCIPrimaryMatch</key> \
        <string>0x1002888</string> \
        <key>IOPCISubDevId</key> \
        <string>0x106B</string> \
        <key>LoadVBios</key> \
        <true/> \
        <key>Model</key> \
        <string>cc</string> \
        <key>VRAM</key> \
        <integer>2000</integer> \
        <key>VideoPorts</key> \
        <integer>3</integer> \
      </dict> \
    </array> \
    <key>BootDisplay</key> \
    <integer>12</integer> \
    <key>DualLink</key> \
    <integer>1</integer> \
    <key>EDID</key> \
    <dict> \
      <key>Custom</key> \
      <data> \
      AQID \
      </data> \
      <key>Inject</key> \
      <true/> \
      <key>ProductID</key> \
      <string>0x9777</string> \
      <key>VendorID</key> \
      <string>0x1007</string> \
    </dict> \
    <key>FBName</key> \
    <string>Exmoor</string> \
    <key>Inject</key> \
    <dict> \
      <key>ATI</key> \
      <true/> \
      <key>Intel</key> \
      <true/> \
      <key>NVidia</key> \
      <true/> \
    </dict> \
    <key>LoadVBios</key> \
    <true/> \
    <key>NVCAP</key> \
    <string>0304</string> \
    <key>NVIDIA</key> \
    <array> \
      <dict> \
        <key>IOPCIPrimaryMatch</key> \
        <string>0x10DE999</string> \
        <key>IOPCISubDevId</key> \
        <string>0x106B</string> \
        <key>LoadVBios</key> \
        <false/> \
        <key>Model</key> \
        <string>aa</string> \
        <key>VRAM</key> \
        <integer>1000</integer> \
        <key>VideoPorts</key> \
        <integer>1</integer> \
      </dict> \
      <dict> \
        <key>IOPCIPrimaryMatch</key> \
        <string>0x10DE999</string> \
        <key>IOPCISubDevId</key> \
        <string>0x106B</string> \
        <key>LoadVBios</key> \
        <true/> \
        <key>Model</key> \
        <string>bb</string> \
        <key>VRAM</key> \
        <integer>1000</integer> \
        <key>VideoPorts</key> \
        <integer>2</integer> \
      </dict> \
    </array> \
    <key>NvidiaGeneric</key> \
    <true/> \
    <key>NvidiaNoEFI</key> \
    <true/> \
    <key>NvidiaSingle</key> \
    <true/> \
    <key>PatchVBios</key> \
    <true/> \
    <key>PatchVBiosBytes</key> \
    <array> \
      <dict> \
        <key>Find</key> \
        <data> \
        AwQF \
        </data> \
        <key>Replace</key> \
        <data> \
        BgcI \
        </data> \
      </dict> \
    </array> \
    <key>VRAM</key> \
    <integer>1500</integer> \
    <key>VideoPorts</key> \
    <integer>2</integer> \
    <key>display-cfg</key> \
    <string>04</string> \
    <key>ig-platform-id</key> \
    <string>0x59230000</string> \
  </dict> \
  <key>KernelAndKextPatches</key> \
  <dict> \
    <key>ATIConnectorsController</key> \
    <string>ATICtl</string> \
    <key>ATIConnectorsData</key> \
    <string>111213</string> \
    <key>ATIConnectorsPatch</key> \
    <string>141516</string> \
    <key>AppleIntelCPUPM</key> \
    <true/> \
    <key>AppleRTC</key> \
    <true/> \
    <key>BootPatches</key> \
    <array> \
      <dict> \
        <key>Comment</key> \
        <string>c3</string> \
        <key>Disabled</key> \
        <true/> \
        <key>Find</key> \
        <data> \
        MTI= \
        </data> \
        <key>MatchBuild</key> \
        <string>10.12.6</string> \
        <key>MatchOS</key> \
        <string>10.12</string> \
        <key>Replace</key> \
        <data> \
        MzQ= \
        </data> \
      </dict> \
    </array> \
    <key>Debug</key> \
    <true/> \
    <key>DellSMBIOSPatch</key> \
    <true/> \
    <key>FakeCPUID</key> \
    <string>0x0306D0</string> \
    <key>ForceKextsToLoad</key> \
    <array> \
      <string>ForceKext</string> \
    </array> \
    <key>KernelCpu</key> \
    <true/> \
    <key>KernelLapic</key> \
    <true/> \
    <key>KernelPm</key> \
    <true/> \
    <key>KernelToPatch</key> \
    <array> \
      <dict> \
        <key>Comment</key> \
        <string>c2</string> \
        <key>Disabled</key> \
        <true/> \
        <key>Find</key> \
        <data> \
        ISI= \
        </data> \
        <key>MatchBuild</key> \
        <string>10.13.6</string> \
        <key>MatchOS</key> \
        <string>10.13</string> \
        <key>Replace</key> \
        <data> \
        IyQ= \
        </data> \
      </dict> \
    </array> \
    <key>KernelXCPM</key> \
    <true/> \
    <key>KextsToPatch</key> \
    <array> \
      <dict> \
        <key>Comment</key> \
        <string>c1</string> \
        <key>Disabled</key> \
        <true/> \
        <key>Find</key> \
        <data> \
        AQ== \
        </data> \
        <key>InfoPlistPatch</key> \
        <true/> \
        <key>MatchBuild</key> \
        <string>10.14.6</string> \
        <key>MatchOS</key> \
        <string>10.14</string> \
        <key>Name</key> \
        <string>k1</string> \
        <key>Replace</key> \
        <data> \
        Ag== \
        </data> \
      </dict> \
      <dict> \
        <key>Comment</key> \
        <string>IONVMeFamily IONameMatch</string> \
        <key>Disabled</key> \
        <false/> \
        <key>Find</key> \
        <data> \
        PHN0cmluZz5wY2kxNDRkLGE4MDQ8L3N0cmluZz4= \
        </data> \
        <key>InfoPlistPatch</key> \
        <true/> \
        <key>Name</key> \
        <string>IONVMeFamily</string> \
        <key>Replace</key> \
        <data> \
        PHN0cmluZz5wY2kxNDRkLGE4MDI8L3N0cmluZz4= \
        </data> \
      </dict> \
    </array> \
  </dict> \
  <key>RtVariables</key> \
  <dict> \
    <key>BooterConfig</key> \
    <string>0x1</string> \
    <key>CsrActiveConfig</key> \
    <string>0x2</string> \
    <key>MLB</key> \
    <string>12345678901234567</string> \
    <key>ROM</key> \
    <data> \
    MBRwYnHo \
    </data> \
  </dict> \
  <key>SMBIOS</key> \
  <dict> \
    <key>BiosReleaseDate</key> \
    <string>08/08/17</string> \
    <key>BiosVendor</key> \
    <string>Apple Inc.</string> \
    <key>BiosVersion</key> \
    <string>MBP81.88Z.004D.B00.1708080655</string> \
    <key>Board-ID</key> \
    <string>Mac-94245B3640C91C81</string> \
    <key>BoardManufacturer</key> \
    <string>Apple Inc.</string> \
    <key>BoardSerialNumber</key> \
    <string>W89135306OPDM6CAD</string> \
    <key>BoardType</key> \
    <integer>10</integer> \
    <key>BoardVersion</key> \
    <string>1.0</string> \
    <key>ChassisAssetTag</key> \
    <string>MacBook-Aluminum</string> \
    <key>ChassisManufacturer</key> \
    <string>Apple Inc.</string> \
    <key>ChassisType</key> \
    <string>0x0A</string> \
    <key>Family</key> \
    <string>MacBook Pro</string> \
    <key>FirmwareFeatures</key> \
    <string>0xC00DE137</string> \
    <key>FirmwareFeaturesMask</key> \
    <string>0xFF1FFF3F</string> \
    <key>LocationInChassis</key> \
    <string>Part Component</string> \
    <key>Manufacturer</key> \
    <string>Apple Inc.</string> \
    <key>Memory</key> \
    <dict> \
      <key>Channels</key> \
      <integer>2</integer> \
      <key>Modules</key> \
      <array> \
        <dict> \
          <key>Frequency</key> \
          <integer>333</integer> \
          <key>Part</key> \
          <string>Part1</string> \
          <key>Serial</key> \
          <string>Ser1</string> \
          <key>Size</key> \
          <integer>2048</integer> \
          <key>Slot</key> \
          <integer>1</integer> \
          <key>Type</key> \
          <string>DDR</string> \
          <key>Vendor</key> \
          <string>v1</string> \
        </dict> \
        <dict> \
          <key>Frequency</key> \
          <integer>366</integer> \
          <key>Part</key> \
          <string>Part2</string> \
          <key>Serial</key> \
          <string>Ser2</string> \
          <key>Size</key> \
          <integer>4096</integer> \
          <key>Slot</key> \
          <integer>2</integer> \
          <key>Type</key> \
          <string>DDR2</string> \
          <key>Vendor</key> \
          <string>v2</string> \
        </dict> \
      </array> \
      <key>SlotCount</key> \
      <integer>4</integer> \
    </dict> \
    <key>Mobile</key> \
    <true/> \
    <key>PlatformFeature</key> \
    <string>0xFFFF</string> \
    <key>ProductName</key> \
    <string>MacBookPro8,1</string> \
    <key>SerialNumber</key> \
    <string>W89G91VFDH2G</string> \
    <key>Slots</key> \
    <array> \
      <dict> \
        <key>Device</key> \
        <string>NVidia</string> \
        <key>ID</key> \
        <integer>1</integer> \
        <key>Name</key> \
        <string>APPL,sdfsdf</string> \
        <key>Type</key> \
        <integer>1</integer> \
      </dict> \
    </array> \
    <key>SmUUID</key> \
    <string>F1AB23C0-C35A-473E-BDB7-455C3A6271E8</string> \
    <key>Version</key> \
    <string>1.0</string> \
  </dict> \
  <key>SystemParameters</key> \
  <dict> \
    <key>BacklightLevel</key> \
    <string>2</string> \
    <key>CustomUUID</key> \
    <string>2926A57C-FF0E-4A64-980F-23483BD41969</string> \
    <key>ExposeSysVariables</key> \
    <true/> \
    <key>InjectKexts</key> \
    <string>Yes</string> \
    <key>InjectSystemID</key> \
    <true/> \
    <key>NoCaches</key> \
    <true/> \
    <key>NvidiaWeb</key> \
    <true/> \
  </dict> \
</dict> \
</plist>";

int ParseXML_tests()
{
  TagDict* dict = NULL;
  EFI_STATUS Status = ParseXML((UINT8*)config_all, &dict, (UINT32)strlen(config_all));
  dict->ReleaseTag();
  TagStruct::EmptyCache();

  if ( !EFI_ERROR(Status) ) {
    XString8 s;
    dict->sprintf(0, &s);
    TagDict* dict2 = NULL;
    Status = ParseXML((UINT8*)s.c_str(), &dict2, s.length());
    if ( !EFI_ERROR(Status) ) {
      if ( !(*dict).debugIsEqual(*dict2, "plist"_XS8) ) {
//        printf("%s", s.c_str());
        return 1;
      }
    }
  }

  return 0;
}

#else
int ParseXML_tests()
{
	// TODO with VS, I get a string too big.
	return 0;
}

#endif

